<html>
<head><meta charset="utf-8"><title>SLG and the chalk-engine crate · wg-traits · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/index.html">wg-traits</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html">SLG and the chalk-engine crate</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="163912916"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163912916" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163912916">(Apr 22 2019 at 15:44)</a>:</h4>
<p>Hi <span class="user-group-mention" data-user-group-id="692">@WG-traits</span>! Reminder that today in ~20 minutes we plan to do a call about how the chalk-engine crate works. This call will be recorded. But the more people that can <a href="https://zoom.us/j/227648518" target="_blank" title="https://zoom.us/j/227648518">join us on Zoom</a> the better!</p>



<a name="163913567"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163913567" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163913567">(Apr 22 2019 at 15:53)</a>:</h4>
<p>Also, here is a <a href="https://paper.dropbox.com/doc/chalk-engine-lecture-2019.04.22--AbtNTdwFJkzBUtfT9v~MiU~cAg-6BqS4l82dOtbBnx8y0Hy4" target="_blank" title="https://paper.dropbox.com/doc/chalk-engine-lecture-2019.04.22--AbtNTdwFJkzBUtfT9v~MiU~cAg-6BqS4l82dOtbBnx8y0Hy4">Dropbox Paper document</a> that we'll be populating as we walk through (presently empty)</p>



<a name="163918554"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918554" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918554">(Apr 22 2019 at 17:02)</a>:</h4>
<p>So, if we were to continue again, (a) we should figure out when is a good time, and (b) it'd be useful to get feedback on where to continue from. My sense is that I should just basically try to cover the actual chalk-engine code in more detail -- so starting roughly from that point?</p>



<a name="163918565"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918565" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918565">(Apr 22 2019 at 17:02)</a>:</h4>
<p>Er, from roughly after the point where I said "here is a forest" :)</p>



<a name="163918682"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918682" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Nick Lawrence <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918682">(Apr 22 2019 at 17:04)</a>:</h4>
<p>Yeah - my mic started acting up, but I'd like to know if theres a way we order the tables before evaluating</p>



<a name="163918735"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918735" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Nick Lawrence <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918735">(Apr 22 2019 at 17:05)</a>:</h4>
<p>since certain evaluations can be used in others (if I understand correctly)</p>



<a name="163918802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918802">(Apr 22 2019 at 17:06)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> after we've covered the actual chalk-engine code, we might want to get to the existing built-in bounds problem (which is somehow related with <span class="user-mention" data-user-id="218621">@Nick Lawrence</span>'s question)</p>



<a name="163918820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163918820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163918820">(Apr 22 2019 at 17:06)</a>:</h4>
<p>plus I should be available this week for a presentation of implied bounds, as I'm on PTO</p>



<a name="163919167"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919167" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919167">(Apr 22 2019 at 17:11)</a>:</h4>
<blockquote>
<p>we might want to get to the existing built-in bounds problem</p>
</blockquote>
<p>yep, definitely. That was sort of my goal, but I figured it'd be important to try and explain what the code itself is doing now. (I have a vague proposal for how to handle things like <code>?T: Sized</code>, at least, though I want to talk out what it means...)</p>



<a name="163919179"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919179" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919179">(Apr 22 2019 at 17:11)</a>:</h4>
<blockquote>
<p>plus I should be available this week for a presentation of implied bounds, as I'm on PTO</p>
</blockquote>
<p>ooh, nice! Let's schedule something!</p>



<a name="163919243"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919243" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919243">(Apr 22 2019 at 17:12)</a>:</h4>
<blockquote>
<p>Yeah - my mic started acting up, but I'd like to know if theres a way we order the tables before evaluating</p>
</blockquote>
<p>do you mean <span class="user-mention" data-user-id="218621">@Nick Lawrence</span> how to order the <em>subgoals</em>?</p>



<a name="163919264"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919264" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919264">(Apr 22 2019 at 17:12)</a>:</h4>
<p>That is, given some strand like <code>Foo(T) :- Bar(T), Baz(T)</code></p>



<a name="163919268"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919268" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919268">(Apr 22 2019 at 17:12)</a>:</h4>
<p>we wind up having to pick whether to evaluate <code>Bar(T)</code> or <code>Baz(T)</code> <em>first</em></p>



<a name="163919270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919270">(Apr 22 2019 at 17:12)</a>:</h4>
<p>and it matters quite a bit which we pick</p>



<a name="163919274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919274">(Apr 22 2019 at 17:12)</a>:</h4>
<p>I didn't really get to that yet...</p>



<a name="163919304"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163919304" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163919304">(Apr 22 2019 at 17:13)</a>:</h4>
<blockquote>
<p>and it matters quite a bit which we pick</p>
</blockquote>
<p>for performance and practicality, that is; theoretically it doesn't matter much at all</p>



<a name="163923443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/163923443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Nick Lawrence <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#163923443">(Apr 22 2019 at 18:01)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> yes, I might mean that</p>



<a name="164029130"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/164029130" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#164029130">(Apr 23 2019 at 20:57)</a>:</h4>
<p><a href="https://youtu.be/Ny2928cGDoM" target="_blank" title="https://youtu.be/Ny2928cGDoM">Video posted</a></p>
<div class="youtube-video message_inline_image"><a data-id="Ny2928cGDoM" href="https://youtu.be/Ny2928cGDoM" target="_blank" title="https://youtu.be/Ny2928cGDoM"><img src="https://i.ytimg.com/vi/Ny2928cGDoM/default.jpg"></a></div>



<a name="164033854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/164033854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#164033854">(Apr 23 2019 at 22:01)</a>:</h4>
<p>When should we do the next session? Next week? Not sure that I have time this week</p>



<a name="164033875"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/SLG%20and%20the%20chalk-engine%20crate/near/164033875" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/SLG.20and.20the.20chalk-engine.20crate.html#164033875">(Apr 23 2019 at 22:01)</a>:</h4>
<p>Maybe somebody can create a Doodle poll?</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>